package implJdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.List;
import javaBeans.Acesso;

import dao.AcessoDao;
import dao.BdUtil;

public class AcessoJdbc implements AcessoDao{
	
	private Connection vObjConnection;
	
	public AcessoJdbc(Connection pObjConnection){
		this.vObjConnection = pObjConnection;
	}

	@Override
	public void criar(Acesso pObjEntidade) throws Exception {
		pObjEntidade.setAcesso_id(BdUtil.returnID("acesso_id_seq", vObjConnection));
		BdUtil.createJDBC(vObjConnection, pObjEntidade);
	}

	@Override
	public void remover(Acesso pObjEntidade) throws Exception {
		BdUtil.removeJDBC(vObjConnection, pObjEntidade, "acesso_id");
	}

	@Override
	public void editar(Acesso pObjEntidade) throws Exception {
		BdUtil.editJDBC(vObjConnection, pObjEntidade, "acesso_id");
	}

	@Override
	public Acesso Procurar(Object pObjPK) throws Exception {
		Acesso pObjAcesso = new Acesso();
		pObjAcesso.setAcesso_id(Integer.parseInt(pObjPK.toString()));
		BdUtil.findByJDBC(vObjConnection, pObjAcesso, "permissao_id", true, true);
		return pObjAcesso;
	}
	
	@Override
	public List BuscarTudo(int pintOrdem, boolean pbooDecrescente) throws Exception {
        Statement vStmSTMT = null;
        ResultSet vResRS = null;
        String pStrSQL = "SELECT * FROM acesso";
		vResRS = vStmSTMT.executeQuery(pStrSQL);
		
		return BdUtil.returnListDados(vObjConnection, pStrSQL);		
	}
}
